import PageConst from './PageConst';

export default {

  defaults(props) {
    return {
      ...PageConst,
    }
  },

  // 获取设备实时数据（工程所有设备）
  async edata(ctx, props) {
    const content = await ctx.fn.DB.ycjk.edata({Authorization: ctx.getProps().token, ...props}).catch(
      (error) => {
        console.log(error);
      }
    );

    if (content) {
      ctx.setState(
        React.addons.update(ctx.getState(), {
          ycsblbOption: {
            jsxdata: {
              data: {$set: content}
            }
          }
        })
      );
    }
  },

  // 工地设备PM曲线图数据查询
  async pm10Qx(ctx, props) {
    const content = await ctx.fn.DB.ycjk.edatas({Authorization: ctx.getProps().token, ...props}).catch(
      (error) => {
        console.log(error);
      }
    );

    if (content) {
      let data = {
        legend: [],
        xAxis: [],
        series: []
      };
      for (let i = 0; i < props.size; i++) {
        data.xAxis.push(i+1);
      }
      data.xAxis.push();
      content.map((kv)=> {
        data.legend.push(kv.name);
        data.series.push({
          name: kv.name,
          type: 'line',
          data: kv.data.reverse()
        });
      });
      ctx.setState(
        React.addons.update(ctx.getState(), {
          ycsbpmOption: {
            legend: {
              data: {$set: data.legend}
            },
            xAxis: {
              $apply: (xAxis) => {
                return xAxis.map(item=> {
                  return React.addons.update(item, {data: {$set: data.xAxis}})
                })
              }
            },
            series: {$set: data.series}
          }
        })
      );
    }
  }
}
